home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / AboveBelow.dxr / Internal_10_foundation cards.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  3.0 KB  |  111 lines

  1. property spriteNum, motion, undercard, row, location
  2. global getlist, equal, currentsel, godlist, foundation, points, rightlist, leftlist
  3.  
  4. on beginSprite me
  5.   row = determinerow()
  6.   undercard = sprite(spriteNum - 8)
  7.   location = sprite(spriteNum).loc
  8. end
  9.  
  10. on mouseDown me
  11.   if foundation[row].getcardcount() > 0 then
  12.     puppetSound(3, member("pick card", "100GPak Generic SFX"))
  13.     sprite(spriteNum).locZ = spriteNum + 1000
  14.     getlist = foundation[row]
  15.     if foundation[row].getcardcount() > 1 then
  16.       undercard.member = member(foundation[row].cards[foundation[row].getcardcount() - 1].membername, "playing cards")
  17.     else
  18.       if foundation[row].getcardcount() = 1 then
  19.         undercard.member = member("empty", "playing cards")
  20.       end if
  21.     end if
  22.     motion = timeout(string(spriteNum) && "motion").new(5, #moving, me)
  23.   end if
  24. end
  25.  
  26. on moving me
  27.   if the mouseDown then
  28.     sprite(spriteNum).loc = the mouseLoc
  29.   else
  30.     if the mouseUp then
  31.       sprite(spriteNum).locZ = spriteNum
  32.       motion.forget()
  33.       abort()
  34.     end if
  35.   end if
  36. end
  37.  
  38. on mouseUp me
  39.   if equal then
  40.     puppetSound(3, member("pick card", "100GPak Generic SFX"))
  41.     sprite(currentsel).member = member(sprite(spriteNum).member.name, "playing cards")
  42.     godlist.addCard(currentsel)
  43.     sprite(spriteNum).loc = location
  44.     if foundation[row].getcardcount() = 1 then
  45.       if row = (#fone or #ftwo or #fthree or #ffour) then
  46.         leftlist.deleteOne(foundation[row].getlastcard().suit)
  47.       end if
  48.       if row = (#ffive or #fsix or #fseven or #feight) then
  49.         rightlist.deleteOne(foundation[row].getlastcard().suit)
  50.       end if
  51.     end if
  52.     foundation[row].cards.deleteOne(foundation[row].getlastcard())
  53.     if foundation[row].getcardcount() > 0 then
  54.       sprite(spriteNum).member = member(foundation[row].getlastcard().membername, "playing cards")
  55.     else
  56.       if foundation[row].getcardcount() = 0 then
  57.         sprite(spriteNum).member = member("empty", "playing cards")
  58.         undercard.member = member("empty", "playing cards")
  59.       end if
  60.     end if
  61.     equal = 0
  62.     currentsel = 0
  63.     godlist = VOID
  64.     getlist = VOID
  65.     repeat with i = 29 to 36
  66.       sprite(i).golem()
  67.     end repeat
  68.     checkwin()
  69.   else
  70.     if not equal then
  71.       puppetSound(3, member("drop card", "100GPak Generic SFX"))
  72.       getlist = VOID
  73.       sprite(spriteNum).loc = location
  74.     end if
  75.   end if
  76. end
  77.  
  78. on determinerow me
  79.   if spriteNum = 21 then
  80.     return #fone
  81.   else
  82.     if spriteNum = 22 then
  83.       return #ftwo
  84.     else
  85.       if spriteNum = 23 then
  86.         return #fthree
  87.       else
  88.         if spriteNum = 24 then
  89.           return #ffour
  90.         else
  91.           if spriteNum = 25 then
  92.             return #ffive
  93.           else
  94.             if spriteNum = 26 then
  95.               return #fsix
  96.             else
  97.               if spriteNum = 27 then
  98.                 return #fseven
  99.               else
  100.                 if spriteNum = 28 then
  101.                   return #feight
  102.                 end if
  103.               end if
  104.             end if
  105.           end if
  106.         end if
  107.       end if
  108.     end if
  109.   end if
  110. end
  111.